package com.bookstore.service;

import com.bookstore.dto.UserDTO;
import com.bookstore.dto.LoginDTO;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.http.ResponseEntity;
import java.util.List;
public interface UserService extends UserDetailsService {
    UserDTO register(UserDTO userDTO);
    ResponseEntity<?> login(LoginDTO loginDTO);
    ResponseEntity<?> getCurrentUserProfile();
    UserDTO getUserById(Long id);
    UserDTO updateUser(Long id, UserDTO userDTO);
    void deleteUser(Long id);
    List<UserDTO> getAllUsers();
    UserDTO getCurrentUser();
    void changePassword(Long userId, String oldPassword, String newPassword);
    boolean checkEmailExists(String email);
    boolean checkUsernameExists(String username);
}